package cn.iocoder.yudao.module.asasc.controller.admin.profitreport.vo;

import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDate;

@Schema(description = "管理后台 - 投入产出报告新增/修改 Request VO")
@Data
public class ProfitReportSaveReqVO {

    @Schema(description = "自增主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "18086")
    private Long id;

    @Schema(description = "组织 ID", example = "48")
    private Long orgId;

    @Schema(description = "应用 ID", example = "4324")
    private Long adamId;

    @Schema(description = "日期")
    private LocalDate repDate;

    @Schema(description = "国家或地区代码")
    private String country;

    @Schema(description = "广告支出(CNY)")
    private BigDecimal adSpend;

    @Schema(description = "销售额(CNY)")
    private BigDecimal ascSales;

    @Schema(description = "订阅所得(CNY)")
    private BigDecimal ascProceeds;

    @Schema(description = "广告展示")
    private Integer adImpressions;

    @Schema(description = "广告点击")
    private Integer adTaps;

    @Schema(description = "广告安装")
    private Integer adInstalls;

    @Schema(description = "广告点击率")
    private BigDecimal adTtr;

    @Schema(description = "广告转化率")
    private BigDecimal adConversionRate;

    @Schema(description = "展示次数")
    private Integer ascImpressions;

    @Schema(description = "点击次数")
    private Integer ascTaps;

    @Schema(description = "首次安装次数")
    private Integer ascInstalls;

    @Schema(description = "重新安装次数")
    private Integer ascReInstalls;

    @Schema(description = "更新安装次数")
    private Integer ascUptInstalls;

    @Schema(description = "点击率")
    private BigDecimal ascTtr;

    @Schema(description = "转化率")
    private BigDecimal ascConversionRate;

    @Schema(description = "自然新增")
    private Integer naturallyInstalls;

    @Schema(description = "广告转化费用")
    private BigDecimal adCpa;

    @Schema(description = "广告点击费用")
    private BigDecimal adCpt;

    @Schema(description = "广告千次展示")
    private BigDecimal adCpm;

    @Schema(description = "试订数")
    private Integer subTrial;

    @Schema(description = "订阅数")
    private Integer subRenewal;

    @Schema(description = "退款数")
    private Integer subRefund;

    @Schema(description = "退款销售额(CNY)")
    private BigDecimal subRefundAmount;
    @Schema(description = "退款收入(CNY)")
    private BigDecimal subRefundProceeds;

}